
'''
类中的方法：
写在类中的函数叫做方法：python3 的类中可以定义三种方法：实例方法（普通方法），类方法，静态方法
类方法：只使用类属性的方法
'''
class Student:
    # 属性和方法
    # 类属性
    stu_count = 0
    school = '秦皇岛职业技术学院'
    #实例属性

    def __init__(self,name,age):
        '''
        初始化的方法
        self 是指我们将来用类来创建出来的实例
        在实例化的时候创建一些实例的属性，并且给他们赋值
        '''
        self.__name = name
        self.__age = age
        self.cls = '1190803'

    #定义一个打印学校的方法，这个方法只用到了类属性，不用实例属性，那就可以把他设置成一个类方法


    @classmethod
    def print_school_name(cls):
        #  使用@classmethod 这个 装饰器的作用就是创建一个类方法，会默认添加第一个参数，cls ：就是这个类的名字
        print(cls.school)
        # 没有办法访问和调用实例属性和方法

    def set_score(self,val):
        self.score =  val
        Student.print_school_name()
        return self.score
Student.print_school_name()
# 在调用类方法的时候，既可以使用类名调用，也可以使用实例去调用
zs = Student('张三',18)
zs.print_school_name()
zs.set_score(60)
